package com.webflux.tm.webflux.module.logic.mysql.bean;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 设备表
 * </p>
 *
 * @author Surging
 * @since 2023-05-09
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class ShDevice extends Model<ShDevice> {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.ASSIGN_UUID)
    private String id;

    /**
     * 编号
     */
    private String code;

    /**
     * 房子ID
     */
    private String houseId;

    /**
     * 房间ID
     */
    private String roomId;

    /**
     * 名称
     */
    private String name;

    /**
     * 设备大类
     */
    private String bigClassCode;

    /**
     * 设备类型编码
     */
    private String classCode;

    /**
     * 设备类型名称
     */
    private String className;

    /**
     * 设备所属控制器编码
     */
    private String dominateCode;

    /**
     * 设置
     */
    private String setting;

    /**
     * 版本号
     */
    private Long profileVersion;

    /**
     * 最长开启时间 最长开启时间 单位-秒
     */
    private Long maxOpenTime;

    /**
     * 开启电源保护
     */
    private Integer volProtect;

    /**
     * 倒计时时间 倒计时 单位-秒
     */
    private Long countdownTime;

    /**
     * 倒计时动作 开：ON；关：OFF；
     */
    private String countdownActive;

    /**
     * 报表时间标志位
     */
    private String timePosition;

    /**
     * 报表区域位置
     */
    private String regionPosition;

    /**
     * 图片链接
     */
    private String pictureUrl;

    /**
     * 父设备Code
     */
    private String parentCode;

    /**
     * 最后活动时间
     */
    private Date lastTime;

    /**
     * 状态 0：绑定；1：未绑定；2：非法；
     */
    private Integer status;

    /**
     * 是否在线 1：在线；0：离线
     */
    private Boolean isOnline;

    /**
     * 儿童锁标识 0:正常；1：锁定
     */
    private Boolean isLock;

    /**
     * 全宅下设备排序
     */
    private Integer serialNum;

    /**
     * 乐观锁标识
     */
    private Integer version;

    /**
     * 是否删除 0:正常；1：已删除
     */
    private Boolean isDeleted;

    /**
     * 备注
     */
    private String remark;

    private String deviceType;

    /**
     * 外循环设备ID
     */
    private String externalDeviceId;

    /**
     * 1：上电后不处理
;2：上电后重新执行;
3：上电后继续执行;3-xx:表示上电xx秒后继续执行
     */
    private String deviceReset;

    /**
     * 设备状态切换时间
     */
    private Date changeTime;

    /**
     * 1：关闭；2：打开；3：不处理；
     */
    private String resetState;

    /**
     * H201版本信息
     */
    private String h201Version;

    /**
     * H301版本信息
     */
    private String h301Version;

    /**
     * 设备开关状态 "0"：开启；"1"："关闭"
     */
    private String deviceSwitchState;

    /**
     * 设备开启超时提醒时间（单位：小时）;默认0：关闭状态
     */
    private Integer openOvertimeTime;

    /**
     * 设备关闭超时提醒时间（单位：小时）;默认0：关闭状态
     */
    private Integer closeOvertimeTime;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 过载电流
     */
    private String overcurrent;

    /**
     * 过压
     */
    private String overpressure;

    /**
     * 欠压
     */
    private String undervoltage;

    /**
     * 空调面板序号
     */
    private Integer airPanelNumber;



}
